;;; +highlight-display.el --- highlight keywords or display more pretty -*- lexical-binding: t -*-

;;; Commentary:

;;; Code:

;; -------- highlight configure files --------
(add-to-list 'auto-mode-alist '("\\.xprofile\\|.\\(.*\\)?rc\\'" . conf-mode))

;; -------- highlight numeric literals in source code --------
(use-package highlight-numbers
  :defer t
  :hook
  (prog-mode . highlight-numbers-mode))

;; -------- highlight indentation --------
(use-package indent-bars
  :defer t
  :custom
  ;; no extra bars in continued func arg lists
  (indent-bars-no-descend-lists t)
  ;; (indent-bars-treesit-support t)
  ;; (indent-bars-treesit-ignore-blank-lines-types '("module"))
  :config
  (setq
   indent-bars-color '(highlight :face-bg t :blend 0.3)
   ;; play with the number of dots for your usual font size
   indent-bars-pattern " . . . . ."
   indent-bars-width-frac 0.25
   indent-bars-pad-frac 0.1)
  :hook
  ((python-base-mode yaml-mode) . indent-bars-mode))

;; -------- highlight brackets delimiters such as (), [] or {} --------
(use-package rainbow-delimiters
  :defer t
  :diminish rainbow-delimiters-mode
  :hook
  ((prog-mode . rainbow-delimiters-mode)
   (rainbow-delimiters-mode . show-paren-mode)))

;; -------- colorizing strings of color names --------
(use-package rainbow-mode
  :defer t
  :diminish rainbow-mode
  :hook
  ((emacs-lisp-mode web-mode html-mode css-mode ess-r-mode) . rainbow-mode))

(provide '+highlight-display)

;;; +highlight-display.el ends here
